home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / SNNSV32.ZIP / SNNSv3.2 / xgui / sources / ui_maspar.c < prev    next >
Encoding:
C/C++ Source or Header  |  1994-04-25  |  5.9 KB  |  223 lines

  1. /*****************************************************************************
  2.   FILE           : ui_maspar.c
  3.   SHORTNAME      : maspar.c
  4.   SNNS VERSION   : 3.2
  5.  
  6.   PURPOSE        :
  7.   NOTES          :
  8.  
  9.   AUTHOR         :
  10.   DATE           :
  11.  
  12.   CHANGED BY     :
  13.   IDENTIFICATION : @(#)ui_maspar.c    1.12 3/2/94
  14.   SCCS VERSION   : 1.12
  15.   LAST CHANGE    : 3/2/94
  16.  
  17.              Copyright (c) 1990-1994  SNNS Group, IPVR, Univ. Stuttgart, FRG
  18.  
  19. ******************************************************************************/
  20.  
  21.  
  22. #include "ui.h"
  23.  
  24. #include <X11/Xaw/Form.h>
  25. #include <X11/Xaw/Box.h>
  26. #include <X11/Xaw/Cardinals.h>
  27. #include <X11/Xaw/SimpleMenu.h>
  28. #include <X11/Xaw/SmeBSB.h>
  29. #include <X11/Xaw/SmeLine.h>
  30.  
  31. #include "kr_ui.h"
  32. #include "krui_typ.h"
  33.  
  34. #ifdef MASPAR_KERNEL
  35.  
  36. #include "ui_xWidgets.h"
  37. #include "ui_textP.h"
  38.  
  39. #include "ui_maspar.ph"
  40.  
  41.  
  42. /*****************************************************************************
  43.   FUNCTION : connect_MasPar
  44.  
  45.   PURPOSE  :
  46.   RETURNS  : void
  47.   NOTES    :
  48.  
  49.   UPDATE   :
  50. ******************************************************************************/
  51.  
  52. static void connect_MasPar (void)
  53.  
  54.     err = krui_MasPar (MASPAR_CONNECT);
  55.     if (err == KRERR_NO_ERROR) {
  56.         ui_xSetToggleState (connect, TRUE);
  57.         ui_xSetToggleState (disconnect, FALSE);
  58.     } else {
  59.         ui_tw_errorMessage (krui_error (err));
  60.         ui_xSetToggleState (connect, FALSE);
  61.     }
  62. }
  63.  
  64.  
  65. /*****************************************************************************
  66.   FUNCTION : disconnect_MasPar
  67.  
  68.   PURPOSE  :
  69.   RETURNS  : void
  70.   NOTES    :
  71.  
  72.   UPDATE   :
  73. ******************************************************************************/
  74.  
  75. static void disconnect_MasPar (void)
  76.  
  77.     err = krui_MasPar (MASPAR_DISCONNECT);
  78.     if (err == KRERR_NO_ERROR) {
  79.         ui_xSetToggleState (disconnect, TRUE);
  80.         ui_xSetToggleState (connect, FALSE);
  81.     } else {
  82.         ui_tw_errorMessage (krui_error (err));
  83.         ui_xSetToggleState (disconnect, FALSE);
  84.     }
  85. }
  86.  
  87.  
  88. /*****************************************************************************
  89.   FUNCTION : standard_Net
  90.  
  91.   PURPOSE  :
  92.   RETURNS  : void
  93.   NOTES    :
  94.  
  95.   UPDATE   :
  96. ******************************************************************************/
  97.  
  98. static void standard_Net (void)
  99.  
  100. {
  101.     err = krui_setSpecialNetworkType (NET_TYPE_GENERAL);
  102.     if (err == KRERR_NO_ERROR) {
  103.         ui_xSetToggleState (standard, TRUE);
  104.         ui_xSetToggleState (feedforward, FALSE);
  105.     } else {
  106.         ui_tw_errorMessage (krui_error (err));
  107.         ui_xSetToggleState (standard, FALSE);
  108.     }
  109. }
  110.  
  111.  
  112. /*****************************************************************************
  113.   FUNCTION : feedforward_Net
  114.  
  115.   PURPOSE  :
  116.   RETURNS  : void
  117.   NOTES    :
  118.  
  119.   UPDATE   :
  120. ******************************************************************************/
  121.  
  122. static void feedforward_Net (void)
  123.  
  124. {
  125.     err = krui_setSpecialNetworkType (NET_TYPE_FF1);
  126.     if (err == KRERR_NO_ERROR) {
  127.         ui_xSetToggleState (standard, FALSE);
  128.         ui_xSetToggleState (feedforward, TRUE);
  129.     } else {
  130.         ui_tw_errorMessage (krui_error (err));
  131.         ui_xSetToggleState (feedforward, FALSE);
  132.     }
  133. }
  134.  
  135.  
  136. /*****************************************************************************
  137.   FUNCTION : closeMasparPannel
  138.  
  139.   PURPOSE  :
  140.   RETURNS  : void
  141.   NOTES    :
  142.  
  143.   UPDATE   :
  144. ******************************************************************************/
  145.  
  146. static void closeMasparPannel (Widget w, Widget pannel, caddr_t call_data)
  147.  
  148. {
  149.     XtDestroyWidget (pannel);
  150. }
  151.  
  152.  
  153. /*****************************************************************************
  154.   FUNCTION : ui_masparPannel
  155.  
  156.   PURPOSE  :
  157.   RETURNS  : void
  158.   NOTES    :
  159.  
  160.   UPDATE   :
  161. ******************************************************************************/
  162.  
  163. void ui_masparPannel (Widget w, Widget button, caddr_t call_data)
  164.  
  165. {
  166.     int n;
  167.     Arg arg[10];
  168.     Position xPos, yPos;
  169.     Dimension width, height;
  170.     Widget masparPannel, border, pannel, label0, label1, done;
  171.  
  172.     n = 0;
  173.     XtSetArg (arg[n], XtNwidth, &width); n++;
  174.     XtSetArg (arg[n], XtNheight, &height); n++;
  175.     XtGetValues (button, arg, (unsigned int) n);
  176.     XtTranslateCoords (button, (Position) (width / 2), (Position) (height / 2), 
  177.                        &xPos, &yPos);
  178.  
  179.     n = 0;
  180.     XtSetArg(arg[n], XtNx, xPos); n++;
  181.     XtSetArg(arg[n], XtNy, yPos); n++;
  182.     masparPannel = XtCreatePopupShell ("MasPar", transientShellWidgetClass, 
  183.                                        button, arg, (unsigned int) n);
  184.     border = XtCreateManagedWidget ("border", boxWidgetClass, 
  185.                                      masparPannel, NULL, ZERO);
  186.     pannel = XtCreateManagedWidget ("pannel", formWidgetClass, 
  187.                                      border, NULL, ZERO);
  188. /*
  189.     label0 = ui_xCreateLabelItem ("MasPar          ", pannel, 
  190.                                   16 * 8, NULL, NULL); 
  191.     connect = ui_xCreateToggleItem ("connect", pannel, NULL, label0, NULL);
  192.     disconnect = ui_xCreateToggleItem ("disconnect", pannel, NULL, connect, NULL);
  193. */
  194.     label1 = ui_xCreateLabelItem ("Network Topology", pannel, 
  195.                                   16 * 8, NULL, label0); 
  196.     standard = ui_xCreateToggleItem ("standard", pannel, NULL, label1, label0);
  197.     feedforward = ui_xCreateToggleItem ("feedforward", pannel, NULL, 
  198.                                   standard, label0);
  199.  
  200.     done = ui_xCreateButtonItem ("done", border, NULL, label1);
  201.  
  202.     XtAddCallback (done, XtNcallback, (XtCallbackProc) closeMasparPannel, (Widget) masparPannel);
  203. /*
  204.     XtAddCallback (connect, XtNcallback, (XtCallbackProc) connect_MasPar, NULL);
  205.     XtAddCallback (disconnect, XtNcallback, (XtCallbackProc) disconnect_MasPar, NULL);
  206. */
  207.     XtAddCallback (standard, XtNcallback, (XtCallbackProc) standard_Net, NULL);
  208.     XtAddCallback (feedforward, XtNcallback, (XtCallbackProc) feedforward_Net, NULL);
  209.  
  210.     ui_checkWindowPosition(masparPannel);
  211.     XtPopup (masparPannel, XtGrabNone);
  212.     ui_xDontResizeWidget(masparPannel); 
  213. }
  214.  
  215.  
  216. #endif /* MASPAR_KERNEL */
  217.  
  218.  
  219. /* end of file */
  220. /* lines: 161 */
  221.